package com.ssm.student.service.impl;

import com.ssm.student.dao.TeacherMapper;
import com.ssm.student.dao.TestpaperMapper;
import com.ssm.student.model.Teacher;
import com.ssm.student.service.TeacherService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

/**
 *实现业务及流程当中的内容
 */
@Service
public class TeacherServiceImpl implements TeacherService {
    @Autowired
    private TeacherMapper teacherMapper;
    /**
     * 教师方法实现
     * @param role 教师实体
     * @return 是否成功（-1：有重复信息）
     */
    @Override
    public int AddTeacher(Teacher teacher) {
        int returnInt=0;
        /*1.业务判断
        （1）角色名不能重复

        （1）判断角色
        * */
        int tnoCount=0;
        tnoCount=teacherMapper.getTno(teacher.getTno());
        if (tnoCount<1){
            //2.数据添加
            int addRoleInt=teacherMapper.insertTeacher(teacher);
            //3.返回值设置
            returnInt=addRoleInt;

        }else {
            returnInt=-1;//有相同的角色名称
        }
        return returnInt;
    }

    /**
     * 角色更新
     * @param role 角色实体
     * @return 更新是否成功（-1：更新执行SQL报错）
     */
    @Override
    public int UpdateTeacher(Teacher teacher) {
        int isUpdate=0;
        /*1.没有业务流程的判断*/
        try{
            isUpdate=teacherMapper.updateTeacher(teacher);
        }catch (Exception e){
            isUpdate=-1;
            //打印更新报错的情况
            System.out.println("更新角色信息时执行SQL报错的原因"+e.getMessage());
        }
        return isUpdate;
    }

    @Override
    public int DeleteTeacher(int teacherid) {
        int delTeacher=0;
        /*1.有关业务流程的判断
         * (1)删除的角色不能与人员权限中间表有关联*/
        try {
            //返回的结果总数量小于1才可以删除

        }catch (Exception e){
            delTeacher=-1;
            System.out.println("删除角色信息时执行SQL报错原因为"+e.getMessage());
        }
        return delTeacher;
    }
}